home *** CD-ROM | disk | FTP | other *** search
/ EuroCD 3 / EuroCD 3.iso / Programming / SecalDemo / Inc / graphics / copper.inc < prev    next >
Text File  |  1998-06-24  |  1KB  |  86 lines

  1. include "inc/exec/types.inc";
  2.  
  3. def COPPER_MOVE = 0;
  4. def COPPER_WAIT = 1;
  5. def CPRNXTBUF = 2;
  6. def CPR_NT_LOF = $8000;
  7. def CPR_NT_SHT = $4000;
  8. def CPR_NT_SYS = $2000;
  9.  
  10. struct CopIns is
  11.   OpCode:word;
  12.  
  13.   u3:union is
  14.     nxtlist:ulong;
  15.  
  16.     u4:struct is
  17.  
  18.       u1:union is
  19.         VWaitPos:word;
  20.         DestAddr:word;
  21.       ;
  22.  
  23.       u2:union is
  24.         HWaitPos:word;
  25.         DestData:word;
  26.       ;
  27.     ;
  28.   ;
  29. ;
  30.  
  31. def NXTLIST = u3.nxtlist;
  32. def VWAITPOS = u3.u4.u1.VWaitPos;
  33. def DESTADDR = u3.u4.u1.DestAddr;
  34. def HWAITPOS = u3.u4.u2.HWaitPos;
  35. def DESTDATA = u3.u4.u2.DestData;
  36.  
  37. struct cprlist is
  38.   Next:ulong;
  39.   start:ulong;
  40.   MaxCount:word;
  41. ;
  42.  
  43. struct CopList is
  44.   Next:ulong;
  45.   _CopList:ulong;
  46.   _ViewPort:ulong;
  47.   CopIns:ulong;
  48.   CopPtr:ulong;
  49.   CopLStart:ulong;
  50.   CopSStart:ulong;
  51.   Count:word;
  52.   MaxCount:word;
  53.   DyOffset:word;
  54.   Cop2Start:ulong;
  55.   Cop3Start:ulong;
  56.   Cop4Start:ulong;
  57.   Cop5Start:ulong;
  58.   SLRepeat:uword;
  59.   Flags:uword;
  60. ;
  61.  
  62. def EXACT_LINE = 1;
  63. def HALF_LINE = 2;
  64.  
  65. struct UCopList is
  66.   Next:ulong;
  67.   FirstCopList:ulong;
  68.   CopList:ulong;
  69. ;
  70.  
  71. struct copinit is
  72.   vsync_hblank[2]:uword;
  73.   diagstrt[12]:uword;
  74.   fm0[2]:uword;
  75.   diwstart[10]:uword;
  76.   bplcon2[2]:uword;
  77.   sprfix[2*8]:uword;
  78.   sprstrtup[(2*8*2)]:uword;
  79.   wait14[2]:uword;
  80.   norm_hblank[2]:uword;
  81.   jump[2]:uword;
  82.   wait_forever[6]:uword;
  83.   sprstop[8]:uword;
  84. ;
  85.  
  86.